MAX+PLUS II version 6.0 read.me File
 MAX+PLUS II ver. 6.0 READ.ME

Although we have made every effort to ensure that this version functions correctly, there may be problems that we haven't encountered. If you have a question or problem that is not answered by the information provided in this read.me file or MAX+PLUS II Help, please contact Altera Applications at (800) 800-EPLD.

MAX+PLUS II Version 6.0

This read.me file for MAX+PLUS II version 6.0 includes information that was not incorporated into the printed documentation or on-line help. Once you have installed and started MAX+PLUS II, this read.me file is also available from the MAX+PLUS II Help menu. This file contains the following sections:

Installation & Operating Requirements

Potential Problems & Recommendations

About MAX+PLUS II On-Line Help

VHDL Synthesis Problems & Recommendations

MAX+PLUS II Help and this read.me file provide the most up-to-date information on MAX+PLUS II software. You should always rely on the on-line help and this read.me file for the most current information.

Some system configurations do not include all features and applications of the complete MAX+PLUS II system. Please ignore all information in this read.me file that is not applicable to your product configuration. Contact your Altera sales representative or Altera Marketing if you wish to purchase an add-on product that offers additional features and applications.

Installation & Operating Requirements

Be sure to read all information on installation and operating requirements in this file before you install MAX+PLUS II version 6.0. The following topics are discussed:

General Information

Minimum Memory & Disk Space Requirements

Logic Programmer Card Support

Potential Installation/Operation Problems

General Information

You should install MAX+PLUS II version 6.0 in a separate directory from any previous MAX+PLUS II version. If your DOS path includes an existing MAX+PLUS II system directory, the Install program will default to installing in that directory, so be sure to override the default directory during installation. To enable MAX+PLUS II features and applications, you must enter your authorization code or specify your network license file with the Authorization Code command (Options menu) when you use MAX+PLUS II for the first time. The authorization code is given on the "STOP, READ THIS FIRST" card included with single-user PC-based MAX+PLUS II systems; a license file for other systems is provided to you after you fax the "Workstation Registration and License File Request Form" to Altera.

Minimum Memory & Disk Space Requirements

1.	To run MAX+PLUS II version 6.0 software, you must have and maintain a minimum of 32 Mbytes of available memory, i.e., combined RAM and virtual memory. The following table shows the amounts of available memory required for compiling projects targeted for the larger devices in some Altera device families:

Family:	Minimum Available Memory:

MAX 7000	32 Mbytes

FLEX 8000	64 Mbytes

FLEX 10K	128 Mbytes

The "Maximizing Available Memory in Windows 3.1 & Windows for Workgroups 3.11" section of MAX+PLUS II Installation in the MAX+PLUS II Getting Started manual describes how to calculate and change the available memory in a PC running Windows 3.1 or Windows for Workgroups 3.11.

2.	MAX+PLUS II requires approximately 100 Mbytes of free disk space.

Logic Programmer Card Support

MAX+PLUS II supports the LP4, LP5, and LP6 Logic Programmer cards.

Potential Installation/Operation Problems

1.	During installation, an internal error can occur if the portion of the PATH variable in your autoexec.bat file that specifies the location of your Windows directory does not include a disk drive letter. For example, a path of \windows will cause an internal error. You must edit the PATH variable to avoid this error.

2.	The following anti-virus software packages have been known to cause problems with installing and running MAX+PLUS II. Altera recommends that you disable these anti-virus software packages in your autoexec.bat file before installing or running MAX+PLUS II.

The vsafe.com anti-virus software provided with MS-DOS version 6.2.

The Disk Protect anti-virus software provided with Norton Utilities.

Potential Problems & Recommendations

Information is available in the following categories:

General Information

PC-Specific Issues

UNIX Workstation-Specific Issues

Assignment & Configuration File (.acf) and Assign Menu Commands

Hierarchy Display

Waveform Editor

Compiler

Floorplan Editor

Simulator

Programmer

Message Processor

MAX+PLUS II Help

Viewlogic Workview PLUS Interface

Mentor Graphics/Application Note 32 Interface

Synopsys/Application Note 34 Interface

Exemplar Interface

Go to VHDL Synthesis Problems & Recommendations at the end of this file for information on the MAX+PLUS II version 6.0 support for VHDL design entry.

General Information

1.	You must install MAX+PLUS II version 6.0 in a new directory that is separate from any earlier installation.

2.	Opening MAX+PLUS II version 6.0 files with earlier versions of MAX+PLUS II will cause internal and other errors. Altera recommends that you archive a project before upgrading to MAX+PLUS II version 6.0 so that you can return to an earlier version if necessary.

3.	Due to changes in the Hierarchy Interconnect File (.hif) format, MAX+PLUS II version 6.0 cannot correctly archive projects created with earlier versions of MAX+PLUS II unless they have been recompiled with MAX+PLUS II version 6.0. However, since the fit of a project may change with the newer version of MAX+PLUS II, Altera strongly recommends archiving existing projects with the previous version of MAX+PLUS II.

4.	Timing-driven compilation is available only for FLEX 8000 and FLEX 10K devices.

5.	MAX+PLUS II version 6.0 does not support an I/O cell register driving an open-drain pin in FLEX 10K devices. You can either implement the logic in a logic cell rather than an I/O cell, or not use the open-drain feature. The Compiler will always generate logically correct results, but may ignore assignments that attempt to implement this type of logic in an I/O cell and therefore place the logic in an ordinary logic cell instead.

6.	MAX+PLUS II versions 5.0 and higher do not correctly convert the now-obsolete logic option assignments in Text Design Files (.tdf) into the ACF format. Therefore, you must modify all Text Design Files (.tdf) that contain Options Statements in a pre-version 5.0 project before you work with the project (i.e., before you specify the project as the current project with the Project Name command) in MAX+PLUS II version 5.0 or higher. You must delete all Options Statements or comment them out. After you start MAX+PLUS II version 5.0 or higher, you can re-enter the logic option and device option assignments with Assign menu commands to add them to the ACF for the project, and remove the "commenting out" from Options Statements containing the BIT0 option, which is still supported.

7.	When you transfer programming files, such as Programmer Object Files (.pof) and JEDEC Files (.jed), to another non-networked computer for device programming, you must also transfer a copy of the <project name>.acf file. If you load a programming file from a floppy disk that does not have a copy of the <project name>.acf file, MAX+PLUS II requires several minutes to generate a new version of the file on the floppy disk. If you transfer the programming file to your hard disk before loading it in MAX+PLUS II, the <project name>.acf file is not required. Also, you should not transfer a copy of the Fit File (.fit) to a computer with an earlier version of MAX+PLUS II for device programming. If you do, the earlier version of MAX+PLUS II may generate an internal error.

8.	You must not name any pin with the same name as the project. A pin with the project name that has an assignment will cause all unassigned logic functions to have the same assignment, thus yielding numerous error messages.

9.	If your third-party design entry software saves assignments in a <project name>.ini, Probe & Resource Assignment File (.prb), and/or Text Design File (.tdf), refer to "Guidelines for Working with Assignments" in MAX+PLUS II Help for information on how to ensure that your assignments are imported correctly into MAX+PLUS II version 6.0.

10.	MAX+PLUS II version 6.0 supports buses in EDIF 3 0 0 files but not in EDIF 2 0 0 files. See "EDIF 2 0 0 Constructs Interpreted by MAX+PLUS II" and "EDIF 3 0 0 Constructs Interpreted by MAX+PLUS II" in MAX+PLUS II Help for information on which EDIF constructs are supported by MAX+PLUS II.

PC-Specific Issues

1.	If MAX+PLUS II is installed on a computer running Windows NT with NTFS, the maxplus2.ini file should be readable and writable by all users or each user should have his or her own copy of the file. Each user must set the maxplus2_ini environment variable with the System control available in the Windows NT Control Panel.

2.	Due to a deficiency in Windows NT version 3.1, context-sensitive help does not work in MAX+PLUS II. For help on a topic, you must choose a command on the Help menu. You may find it helpful to use the Search for Help on command (Help menu), which allows you to find help on a key word or phrase.

This problem does not occur in Windows NT version 3.5 and higher.

3.	If MAX+PLUS II is installed on a computer running Windows 3.1, you may experience problems when using networked drives mounted with NFS. For this reason, Altera recommends installing and using MAX+PLUS II on your hard disk.

4.	By default, MAX+PLUS II version 6.0 for PCs does not use the built-in support for long filenames that is available in Windows NT and Windows 95. Instead, long filenames that are entered in MAX+PLUS II are mapped to shorter names on disk (i.e., with up to 8 characters and a maximum 3-character extension), and the mappings are stored in the maxplus2.idx file in each directory that contains long filenames. If you are running Windows NT or Windows 95, you can disable this functionality and use the built-in long filename support provided by your operating system by setting the USE_WIN95_WINNT_LONG_FILENAMES variable in the [system] section of your maxplus2.ini file to ON.

5.	Windows NT will allow you to run multiple copies of MAX+PLUS II from the command line. However, MAX+PLUS II is not designed for this purpose, and Altera strongly recommends avoiding this practice. Unpredictable and/or incorrect results may occur.

Workstation-Specific Issues

1.	In the UNIX workstation environment, MAX+PLUS II uses all lowercase filenames for Altera-provided mega- and macrofunction names, and their corresponding Symbol File (.sym) and AHDL Include File (.inc) names. Because this environment is case-sensitive, you should use lowercase characters for all references to these files in text-based design files. Altera also recommends using all lowercase names for your own megafunctions, macrofunctions, Symbol Files, and Include Files. However, Altera provides a variable that you can add to your maxplus2.ini file to lessen the impact of the UNIX environment's case-sensitivity during compilation:

FILE_CASE_SEARCH_NODE=<setting>

where <setting> is one of the following:

LOWER	MAX+PLUS II searches for the exact filename case. If the exact case is not found, it searches for a lowercase version of the name. This setting is the default for MAX+PLUS II version 6.0.

SMART	MAX+PLUS II searches for the exact filename case. If the exact case is not found, it searches for a lowercase version of the name; if that is not found, it searches for the name in any case.

ALL	MAX+PLUS II searches for the exact filename case. If the exact case is not found, it will search for the name in any case. This option can slow the speed performance of MAX+PLUS II.

Altera does not recommend creating multiple files in the same directory whose names differ only by case.

Assignment & Configuration File (.acf) and Assign Menu Commands

1.	You cannot undo edits entered with Assign menu commands. You must manually reverse any change that you wish to undo. Edits to assignment and configuration information are not undone even if you close a file without saving any edits.

2.	If you delete a logic function that has an assignment, the assignment is not automatically deleted from the ACF. You must use the Assign menu dialog boxes to delete the obsolete assignments.

3.	The Pin/Location/Chip dialog box does not support simultaneous edits for items assigned to multiple different chips. All logic functions selected when you use the dialog box must be assigned to the same chip. Therefore, you should not select items that are assigned to multiple different chips before opening the dialog box.

4.	Configuration information for the Programmer is not stored in the ACF.

5.	The file format for the Node Database File (.ndb) from earlier versions of MAX+PLUS II is incompatible with MAX+PLUS II versions 5.2 and higher, and is silently ignored when you open old projects with MAX+PLUS II version 6.0. Therefore, the Search Node Database dialog box, as well as the Unassigned Nodes & Pins box in the Floorplan Editor, will not display any unassigned node names for pre-version 5.2 projects until you recompile them with MAX+PLUS II version 6.0.

6.	In MAX+PLUS II version 6.0, all options under Automatic Global in the Global Project Logic Synthesis dialog box (Assign menu) default to on for new projects. Therefore, MAX+PLUS II version 6.0 may create more automatic global signals for some devices than earlier versions of MAX+PLUS II. In general, this change will improve fitting results. However, if you have problems with fitting projects that compiled with earlier versions of MAX+PLUS II because of automatic global signal changes, you should turn off the appropriate option under Automatic Global in this dialog box. You should then use GLOBAL primitives to implement global signals in your project. For example, the automatic global clocking may create problems in MAX 5000 devices, in which each LAB is allowed to have either all global or all array clocks. For MAX 5000 projects with multiple clocks, you may wish to turn off automatic global clocking with this dialog box.

7.	Assignments to an Embedded Array Block (EAB) in a FLEX 10K design are ignored. However, assignments to individual embedded cells are honored.

Hierarchy Display

If you name a project without first creating the top-level design file, the Hierarchy Display window displays an icon that shows the Graphic Design File (.gdf) extension. After you save a design file with the project name, the correct extension for the file will be displayed.

Waveform Editor

MAX+PLUS II cannot save group information in a Table File (.tbl) if it is created from a Simulator Channel File (.scf) in which group logic levels are displayed with Gray code displayed as binary count. To save group information in the Table File, you must turn off the Display Gray Code As Binary Count option in the Enter Group dialog box (Node menu) for all groups.

Compiler

1.	The Compiler will not correctly re-extract the netlists for EDIF Input Files (.edf) and Xilinx Netlist Format Files (.xnf) unless you turn on Total Recompile (Processing menu) if you have already compiled a project and then do one of the following:

-	Change the names of the GND and VCC signals specified with the EDIF Netlist Reader Settings dialog box (Interfaces menu).

-	Turn the Generate AHDL Text Design Export File (.tdx) or Translate Internal Node Names into N~<number> Format options on or off in the XNF Netlist Reader Settings dialog box (Interfaces menu).

2.	Restrictions on the lengths of cascade chains that are specified in individual logic options or as part of the global project logic synthesis style are ignored. Also, a specified maximum length of 2 is ignored on the lengths of carry chains.

Floorplan Editor

1.	You cannot enter an assignment to an unconnected input pin in the Floorplan Editor window to reserve it for future use. You must use the Pin/Location/Chip command (Assign menu) instead.

2.	If you recompile a project with the Functional SNF Extractor command (Processing menu) turned on, assignments that have been back-annotated from an earlier full compilation do appear in the Floorplan Editor's LAB and Device views. However, if you cut an assignment or attempt to drag it to the Unassigned Nodes & Pins box, it will disappear. You must recompile the project with Functional SNF Extractor turned off before you can work effectively with assignments in the Floorplan Editor window.

3.	The information displayed in the Routing Statistics dialog box (Options menu) for Logic Cell Fan-In and Logic Cell Fan-Out may not be accurate for signals that feed multiple devices in a partitioned project.

4.	The Floorplan Editor cannot locate errors for advanced information devices, i.e., devices for which no programming files are generated.

Simulator

1.	Clock signals on multiple synchronous Clock pins on EP1810 EPLDs are not applied simultaneously when you perform functional testing with the MPU and the PLMJ1810 adapter. Therefore, functional testing may indicate a false failure in an EP1810 project with multiple synchronous Clock pins.

2.	If you open the Initialize Memory dialog box (Initialize menu) after performing a simulation, it will correctly show the current values for memory. However, unless you make an edit and save it by choosing OK, the next simulation will revert to the initial values that were specified at the beginning of the first simulation, and will ignore the values that are visible in the dialog box. You can make a trivial edit, choose OK, reopen the dialog box, and then reverse the edit to preserve the values that were present at the end of the first simulation.

Programmer

2.	If you transfer a programming file created with MAX+PLUS II version 6.0 to a computer with an earlier version of MAX+PLUS II for device programming, you should not also transfer a copy of the Fit File (.fit). If you do, the earlier version of MAX+PLUS II may generate an internal error.

3.	If you try to change the project name in order to program a device from a read-only drive or diskette, file write errors will be displayed in pop-up message boxes with Retry and Cancel buttons. If you choose Cancel each time the message appears (two or three times), the project will change successfully and you will be able to program the device.

Message Processor

Due to a deficiency in Windows NT 3.1, context-sensitive help via the Help on Message button does not work when MAX+PLUS II is running. For help on a message, you must choose the Messages command on the Help menu and search through the alphabetical list of messages.

This problem does not occur in Windows NT 3.5 and higher.

MAX+PLUS II Help

If you use the context-sensitive Help pointer to get context-sensitive help on an item in MAX+PLUS II, and then immediately return to MAX+PLUS II and use the context-sensitive Help pointer to get context-sensitive help on the same item, an error may occur in MAX+PLUS II Help.

If you have installed both Windows 3.1 and Windows NT in the same directory, you may experience unrecoverable application errors (UAEs) if you attempt to use MAX+PLUS II Help while running MAX+PLUS II under Windows 3.1. Altera recommends using Windows NT rather than Windows 3.1 in these cases.

MAX+PLUS II version 6.0 uses the Windows 4.0 Help viewer. If you are running another application that uses the Windows 3.1 Help viewer, you cannot open its Help file unless you close the MAX+PLUS II Help file, and vice versa.

Synopsys/Application Note 34 Interface

Synopsys users should always turn on the SOFT Buffer Insertion logic option in the default logic synthesis style for any project.

Exemplar Interface

When you use MAX+PLUS II with Exemplar, the MAX+PLUS II and Exemplar license files must be kept separate because of lmgrd version incompatibilities. The Exemplar license should use lmgrd version 2.21 (provided with Exemplar), while license.dat should use lmgrd version 4.1 (provided with MAX+PLUS II).

About MAX+PLUS II On-Line Help

If you encounter a dialog box with the message "Invalid Keyword" or "The topic does not exist. Contact your application vendor for an updated Help file." when you request Help on any topic, you should contact Altera Applications Engineering at (800) 800-EPLD. The message simply indicates that the hypertext link to the Help information on that topic was inadvertently omitted. Even if you receive this message, you may be able to find information on the item with the Search for Help on command or another command on the Help menu.

If you encounter a dialog box or message with the message "Help file does not contain any keywords", do not contact Altera Applications. This message is caused by a deficiency in Windows NT 3.1.

The Help on Message button in the Message Processor does not provide context-sensitive help messages for errors that are detected when you convert Altera Design Files (.adf) and State Machine Files (.smf) originally created for A+PLUS or SAM+PLUS. However, you can reach on-line help on these messages with one additional step: the Help on Message button opens a list of all MAX+PLUS II messages, including ADF and SMF conversion messages. Select a message in this list to display the likely cause of the message and recommended action.

VHDL Synthesis Problems & Recommendations

Please report any problems with compiling VHDL designs to Altera Applications at (800) 800-EPLD as soon as possible. We welcome your feedback.

General Problems

1.	Some error messages do not report the line and column number where the error was detected.

2.	Context-sensitive help in the Text Editor is available for MAX+PLUS II primitive, macrofunction, and megafunction names in VHDL Design Files. It is not available for VHDL keywords.

3.	An "Unsupported Feature: unresolved signal is multiply driven" error is generated for a two-dimensional array driven in a Concurrent Signal Assignment Statement. You can avoid this error by moving the assignment into a Process Statement. The following example shows an example of logic that will generate the error and a workaround:

PACKAGE two_d_package IS

   TYPE two_d_array IS ARRAY (0 TO 1, 0 TO 1) OF BIT;

END two_d_package;

USE WORK.two_d_package.ALL;

ENTITY memtest1 IS

PORT (

   data_in  : IN    BIT_VECTOR(1 DOWNTO 0);

   data_out : OUT   two_d_array

   );

END memtest1;

ARCHITECTURE a OF memtest1 IS

BEGIN

   -- Workaround is to put logic inside a Process Statement:

--   PROCESS (data_in)

--   BEGIN

   data_out(0, 0) <= data_in(0);

   data_out(0, 1) <= data_in(1);

   data_out(1, 0) <= '0';

   data_out(1, 1) <= '1';

--   END PROCESS;

END a;

4.	If the Compiler recognizes logic in your project as a state machine, it will ignore any usage of the ENUM_ENCODING attribute to manually specify state assignments. If the Compiler does not recognize logic in your project as a state machine, it will use any ENUM_ENCODING attribute information in the VHDL Design File. However, if the Compiler does not recognize logic in your project as a state machine, it will not be reported as a state machine in the Report File (.rpt) for your project. Go to "Implementing State Machines (VHDL)" in MAX+PLUS II Help for more information on the conditions under which the Compiler recognizes state machines.

5.	MAX+PLUS II VHDL does not support initialization of variables, including variables used in a function or procedure. Using a variable that is initialized in a function body may cause a spurious error. To prevent such errors, you must assign an initial value to the variable in the function body.

6.	For additional up-to-date information on current MAX+PLUS II VHDL support, go to "MAX+PLUS II VHDL Support" in MAX+PLUS II Help, which provides access to topics that list the exact support provided for VHDL constructs in the IEEE Standard VHDL Language Reference Manual.

Unknown Problem Errors

Some VHDL designs will cause unknown errors when the VHDL Netlist Reader processes your project. These errors are reported as "Unknown problem in <text>. Please refer to on-line help." If you receive unknown error messages, try to isolate the problem by commenting out sections of the VHDL Design File until it starts to compile. In all cases, contact Altera Applications for further assistance.

The following case causes one known occurrence of this error:

Comparison to a meta-logic value (e.g., X, L, H, Z, W, or -) that is logically combined in an If Statement causes the error "Unknown problem in <text> (%CC-F-InternalError, Internal Error in CDFGCritic). Please refer to on-line help." The following example shows an example of logic that will generate the error and a workaround:

LIBRARY IEEE;

USE IEEE.std_logic_1164.ALL;

ENTITY metaerr IS

   PORT(

      busa : IN  STD_LOGIC_VECTOR(2 DOWNTO 1);

      busb : IN  STD_LOGIC_VECTOR(2 DOWNTO 1);

      q    : OUT STD_LOGIC);

END metaerr;

ARCHITECTURE a OF metaerr IS

BEGIN

   PROCESS (busa, busb)

   BEGIN

      -- Don't use meta-logic comparisons: they always return FALSE.

      -- This logic reduces to the "busb" comparison.

      IF (busa = "0X" OR busb = "11") THEN

         q <= '1';

      ELSE

         q <= '0';

      END IF;

   END PROCESS;

END a;


Notes for all readme files:

1.	Dont use curly quotes because its a hassle to fix them when you generate an ASCII version of the file.

2.	The variable 6.0 may not get changed into "5.0" or whatever correctly if it was not typed in one continuous string, i.e., if you mistyped and then went back to fix it. There are 2 things to do before the final readme is put to catch/avoid this:

a.	Type 6.0 in a continuous string, copy it, and use it as your ^c in a global search and replace.

b.	After you save the RTF and while it is open, search for MAXC_ and look at each occurrence of the term. If any occurences are split by a carriage return, reopen the .mac file and do step 1 again or just retype (in one continuous string) the offending 6.0 string.

3.	Always use right tabs, not decimal tabs, in the table showing the free disk space required to run MAX+PLUS II. Decimal tabs don't work.